gusucode.com > 基于simulink的数字信号调制与解调的仿真源码程序 > code/演示程序及子程序适用于matlab 7.0及以上版本/jpm1.m
function jpm1() M = 2; t = 0:0.001:0.999; m = randint(10, 1, M)'; p_code=sign(m(ceil(10*t+0.01))-0.5);%把0,1序列码变换为-1,1调制码 p=p_code.*cos(2*pi*10*t); p1=p.*cos(2*pi*10*t); Fs=80; fp=0.009*Fs/2; rp=0.01; fs=0.012*Fs/2; rs=0.1; f= [fp fs]; A=[1 0]; dev=[rp rs]; [n,f0,m0,W]=remezord(f,A,dev,Fs); b=remez(n,f0,m0,W); Y=filter2(b,2*p1); for i=1:length(t); if (Y(i)>0.01) receive(i)=1; else receive(i)=0; end end h=plot(t, p+6,'r',t,Y+3,'b',t,receive,'k'); set(h,'linewidth',2); axis([0, 1, -0.2, 8.2]); xlabel('2PSK解调信号') ; grid;